package cn.edu.lcu.cs.javaprogramming.practice.basic.prime;

/**
 * <p>
 * 素数：如果除了1和它本身以外，不能被其他正整数整除，就叫素数。
 * <p>
 * 分析
 * <p>
 * ⚫ 101-200之间的数据可以采用循环依次拿到; 每拿到一个数，判断该数是否是素数。
 * <p>
 * ⚫ 判断规则是：从2开始遍历到该数的一半的数据，看是否有数据可以整除它，有则不是素数，没有则是素数。
 * <p>
 * 1.本次案例中是如何确定出该数是素数的，具体如何实现？
 * <p>
 * ⚫ 遍历2开始到该数的一半的数据去判断是否有整除它的。
 *
 * @author ling
 */
public class Prime {
    public static int countPrime() {
        //101-200之间素数的个数
        int count = 0;
/***************作答区域***************/
        for (int num = 101; num <= 200; num++) {
            boolean isPrime = true;
            for (int i = 2; i <= num / 2; i++) {
                if (num % i == 0) {
                    isPrime = false;
                    break;
                }
            }
            if (isPrime) {
                count++;
                printPrime(num);
            }
        }
/***************作答区域***************/
        return count;
    }

    /**
     * 使用此方法输出判断出来的素数
     */
    public static void printPrime(int prime) {
        System.out.print(prime + "\t");
    }
}